Fragmented content

ABSTRACT

An apparatus, method, system and computer-readable medium are provided for generating one or more segments associated with content. The segments may include fragments that may correspond to portions of the content. The segments and/or the fragments may be included in a playlist, and may be based at least in part on a user selection.

BACKGROUND

Computing technologies have changed the way people go about their dailylives. In the context of content delivery, users now demand the abilityto consume and view a variety of content at a time and place of theirchoosing.

Content delivery models differ from one another. For example, in a videoon demand (VoD) environment, content may be delivered using apush-streaming model. Other technologies that leverage fragmented videoand Internet protocol delivery (e.g., HTTP) may use a client-pull model.Even these newer technologies use very different models for, e.g., VODand linear delivery. A need exists for allowing greater flexibility tousers to tailor content received in accordance with any delivery model.

SUMMARY

This summary is not intended to identify critical or essential featuresof the disclosure provided herein, but instead merely summarizes certainfeatures and variations thereof.

In some illustrative embodiments, content (e.g., a video) may be dividedup into one or more segments. Boundaries for the various segments may bebased on one or more inputs or factors, such as the existence of abreak, a rating, a genre, a plot line, characters, etc. The segments mayhave different start and/or end times.

In some embodiments, one or more segments may include one or morefragments. The fragments may correspond to a portion of a content assetor item, such as a program.

In some embodiments, linear content delivery may be implemented as aplaylist of assets. The assets included in the playlist may be based atleast in part on a user selection. In some embodiments, a userinterface, such as an electronic programming guide (EPG), an interactiveprogramming guide (IPG), etc., may be used to facilitate the user'sselections.

Other details and features will also be described in the sections thatfollow.

BRIEF DESCRIPTION OF THE DRAWINGS

Some features herein are illustrated by way of example, and not by wayof limitation, in the figures of the accompanying drawings and in whichlike reference numerals refer to similar elements.

FIG. 1 illustrates an example network.

FIG. 2 illustrates an example computing device on which the variouselements described herein can be implemented.

FIG. 3 illustrates an example content asset demonstrating one or moreaspects of this disclosure.

FIG. 4 illustrates an example user interface demonstrating one or moreaspects of this disclosure.

FIG. 5 illustrates an example method for demonstrating one or moreaspects of this disclosure.

DETAILED DESCRIPTION

Various connections between elements are discussed and illustrated inthe following description. These connections are general and, unlessspecified otherwise, may be for example direct or indirect, wired orwireless, and this specification is not intended to be limiting in thisrespect.

In the following description of various illustrative embodiments,reference is made to the accompanying drawings, which form a parthereof, and in which is shown, by way of illustration, variousembodiments in which aspects of the disclosure may be practiced. It isto be understood that other embodiments may be utilized and structuraland functional modifications may be made, without departing from thescope of the present disclosure.

FIG. 1 illustrates an example network 100 on which many of the variousfeatures described herein may be implemented. Network 100 may be anytype of information distribution network, such as satellite, telephone,cellular, wireless, etc. One example may be an optical fiber network, acoaxial cable network or a hybrid fiber/coax distribution network. Suchnetworks 100 use a series of interconnected communication lines 101(e.g., coaxial cables, optical fibers, wireless, etc.) to connectmultiple premises 102 (e.g., businesses, homes, consumer dwellings,etc.) to a central office or headend 103. The central office 103 maytransmit downstream information signals onto the lines 101, and eachpremises 102 may have a receiver used to receive and process thosesignals.

There may be one line 101 originating from the central office 103, andit may be split a number of times to distribute the signal to variouspremises 102 in the vicinity (which may be many miles) of the centraloffice 103. The lines 101 may include components not illustrated, suchas splitters, filters, amplifiers, etc. to help convey the signalclearly, but in general each split introduces a bit of signaldegradation. Portions of the lines 101 may also be implemented withfiber-optic cable, while other portions may be implemented with coaxialcable, other lines, or wireless communication paths.

The central office 103 may include a termination system (TS) 104, suchas a cable modem termination system (CMTS), which may be a computingdevice configured to manage communications between devices on thenetwork of lines 101 and backend devices such as servers 105-107 (to bediscussed further below). The termination system (TS) may be asspecified in a standard, such as the Data Over Cable Service InterfaceSpecification (DOCSIS) standard, published by Cable TelevisionLaboratories, Inc. (a.k.a. CableLabs), or it may be a similar ormodified device instead. The termination system (TS) may be configuredto place data on one or more downstream frequencies to be received bymodems at the various premises 102, and to receive upstreamcommunications from those modems on one or more upstream frequencies.The central office 103 may also include one or more network interfaces108, which can permit the central office 103 to communicate with variousother external networks 109. These networks 109 may include, forexample, networks of Internet devices, telephone networks, cellulartelephone networks, fiber optic networks, local wireless networks (e.g.,WiMAX), satellite networks, and any other desired network, and theinterface 108 may include the corresponding circuitry needed tocommunicate on the network 109, and to other devices on the network suchas a cellular telephone network and its corresponding cell phones.

As noted above, the central office 103 may include a variety ofcomputing devices such as servers 105-107 that may be configured toperform various functions. For example, the central office 103 mayinclude a push notification server 105. The push notification server 105may generate push notifications to deliver data and/or commands to thevarious premises 102 in the network (or more specifically, to thedevices in the premises 102 that are configured to detect suchnotifications). The central office 103 may also include a content server106. The content server 106 may be one or more computing devices thatare configured to provide content assets to users in the homes. Thesecontent assets may be, for example, video on demand movies, televisionprograms, songs, text listings, etc. The content server 106 may includesoftware to validate user identities and entitlements, locate andretrieve requested content assets, encrypt the content assets, andinitiate delivery (e.g., streaming) of the content assets to therequesting user and/or device.

The central office 103 may also include one or more application servers107. An application server 107 may be a computing device configured tooffer any desired service, and may run various languages and operatingsystems (e.g., servlets and JSP pages running on Tomcat/MySQL, OSX, BSD,Ubuntu, Redhat, HTML5, JavaScript, AJAX and COMET). For example, anapplication server may be responsible for collecting television programlistings information and generating a data download for electronicprogram guide or interactive program guide listings. Another applicationserver may be responsible for monitoring user viewing habits andcollecting that information for use in selecting advertisements. Anotherapplication server may be responsible for formatting and insertingadvertisements in a video stream being transmitted to the premises 102.Another application server may be responsible for receiving user remotecontrol commands, and processing them to provide an intelligent remotecontrol experience.

An example premises 102 a may include an interface 120. The interface120 may comprise, in one aspect, a modem 110, which may includetransmitters and receivers used to communicate on the lines 101 and withthe central office 103. The modem 110 may be, for example, a coaxialcable modem (for coaxial cable lines 101), a fiber interface node (forfiber optic lines 101), or any other desired modem device. The modem 110may be connected to, or be a part of, a gateway interface device 111.The gateway interface device 111 may be a computing device thatcommunicates with the modem 110 to allow one or more other devices inthe premises 102 a to communicate with the central office 103 and otherdevices beyond the central office. The gateway 111 may be a set-top box(STB), digital video recorder (DVR), computer server, or any otherdesired computing device. The gateway 111 may also include (not shown)local network interfaces to provide communication signals to devices inthe premises 102 a, such as televisions 112, additional STBs 113,personal computers 114, laptop computers 115, wireless devices 116(wireless laptops, tablets and netbooks, mobile phones, mobiletelevisions, personal digital assistants (PDA), etc.), and any otherdesired devices. Examples of the local network interfaces includeMultimedia Over Coax Alliance (MoCA) interfaces, Ethernet interfaces,universal serial bus (USB) interfaces, wireless interfaces (e.g., IEEE802.11), Bluetooth interfaces, and others.

FIG. 2 illustrates general hardware and software elements that can beused to implement any of the various computing devices discussed above.The computing device 200 may include one or more processors 201, whichmay execute instructions of a computer program to perform any of thefeatures described herein. The instructions may be stored in any type ofcomputer-readable medium or memory, to configure the operation of theprocessor 201. For example, instructions may be stored in a read-onlymemory (ROM) 202, random access memory (RAM) 203, removable media 204,such as a Universal Serial Bus (USB) drive, compact disk (CD) or digitalversatile disk (DVD), floppy disk drive, or any other desired electronicstorage medium. Instructions may also be stored in an attached (orinternal) hard drive 205. The computing device 200 may include one ormore output devices, such as a display 206 (or an external television),and may include one or more output device controllers 207, such as avideo processor. There may also be one or more user input devices 208,such as a remote control, keyboard, mouse, touch screen, microphone,etc. The computing device 200 may also include one or more networkinterfaces, such as input/output circuits 209 (such as a network card)to communicate with an external network 210. The network interface maybe a wired interface, wireless interface, or a combination of the two.In some embodiments, the interface 209 may include a modem (e.g., acable modem), and network 210 may include the communication lines 101discussed above, the external network 109, an in-home network, aprovider's wireless, coaxial, fiber, or hybrid fiber/coaxialdistribution system (e.g., a DOCSIS network), or any other desirednetwork.

Aspects of this disclosure may be implemented to provide one or moremodels of content delivery, such as audio, video and data (e.g., closedcaptioning, alerts, etc.) delivery. In some embodiments, a single modelof content delivery may be used, potentially irrespective of the type ofcontent that is being delivered. In some embodiments, video codecs,protocols, and control plane flows may be provided on a constant orconsistent basis. In some embodiments, various features (e.g., StartOver and Digital Video Recording (e.g., network DVR)) may be provided.For purposes of illustrative simplicity and consistency, the deliveredcontent asset is described as comprising video. The techniques describedherein can be adapted and applied to other forms or types of contentdelivery, such as a delivery of text files, audio (e.g., music, voice),pictures/images, emails, instant messages, etc.

FIG. 3 illustrates a content asset 300 in accordance with one or moreaspects of this disclosure. Content asset 300 may be delivered from aserver, such as a server located at central location 103 of FIG. 1, toone or more user or client devices, such as a gateway 111 or STB 113 ofFIG. 1. Content asset 300 may be associated with a video, audio, orother data.

Content asset 300 may include one or more segments 306. Segments 306 maycorrespond to one or more portions of content asset 300. Boundariesbetween segments 306 may be based at least in part on the existence orlocation of one or more commercial breaks, changes in plot, introductionof characters, changes in audio (e.g., a change in song), or othervarious criteria.

In FIG. 3, four segments are shown—306(1), 306(2), 306(3), and 306(4). Acontent asset may comprise any number of segments (e.g., segments 306).In some embodiments, content asset 300 may be organized, configured, orarranged as a file, a data structure, or the like.

Segments 306(1)-306(4) may be of various sizes or dimensions (e.g.,which may be measured in terms of a memory capacity needed to store asegment, a run-length or duration of the segment, etc.). In other words,the size of any given segment (e.g., 306(1)) shown in FIG. 3 may bedifferent from the size of other segments (e.g., 306(2)-306(4)). In someembodiments, two or more of the segments may be the same size/dimension.In some embodiments, one or more of segments 306(1)-306(4) may beorganized, configured, or arranged as a file, a data structure, or thelike.

Segments 306(1)-306(4) may include one or more fragments 312. Fragments312 may correspond to one or more portions of a segment 306. Boundariesbetween segments fragments 312 may be based at least in part on theexistence or location of one or more commercial breaks, changes in plot,introduction of characters, changes in audio (e.g., a change in song),or other various criteria.

As shown, segment 306(1) may include fragments 312(1)-1 through312(1)-4, segment 306(2) may include fragments 312(2)-1 through312(2)-3, segment 306(3) may include fragments 312(3)-1 through312(3)-2, and segment 306(4) may include fragment 312(4)-1. In someembodiments, one or more of the segments 306 may include more or lessfragments 312 than what is shown in FIG. 3. A fragment 312 may berepresentative of a portion of a program associated with content asset300.

In some embodiments, segments 306 may be generated based at least inpart on a passage of time, such as a passage of a predetermined amountof time. For example, if a program corresponding to content asset 300 istwenty-eight (28) minutes in length in terms or run/viewing time, eachof segments 306(1)-306(4) may correspond to seven (7) minutes of theprogram. In some embodiments, the time duration associated with each ofthe segments might not be equal. Thus, for the same twenty-eight minuteprogram, segment 306(1) may correspond to ten minutes, segment 306(2)may correspond to eight minutes, segment 306(3) may correspond to sixminutes, and segment 306(4) may correspond to four minutes. The valuesused are illustrative, and other values may be used in some embodiments.

In some embodiments, segments 306 may be generated based at least inpart on one or more events, such as a commercial break. For example, ifcontent asset 300 corresponds to a program (e.g., a television program),each of segments 306(1)-306(4) may correspond to the portion of aprogram excluding commercials or advertisements. Thus, a gap betweensegments 306(1) and 306(2) may correspond to a first commercial break, agap between segments 306(2) and 306(3) may correspond to a secondcommercial break, and a gap between segments 306(3) and 306(4) maycorrespond to a third commercial break. In this manner, content asset300 may be representative of the program excluding commercials oradvertisements. Events other than commercial breaks may be used forpurposes of determining segment boundaries. For example, a change in ascene or setting, story-line or plot, introduction or removal of acharacter from a particular scene, etc., may be used to establishsegment boundaries.

In some embodiments, segments 306 may be generated based at least inpart on selections made by a user or client device. For example, andreferring to FIG. 4, a user may be presented with information regardinga program, titled “The George and Jerry Show,” via a user interface (UI)404, such as an electronic programming guide (EPG), an interactiveprogramming guide (IPG), a smartphone application, or any otherinterface. UI 404 may include a preview area 410 that may be used todisplay one or more pictures associated with the program and/or play oneor more clips or portions of the program. Preview area 410 may also beused to play a clip in response to a selection of one or more fragments312 from fragment listing 414. In some embodiments, UI 404 may include asegment listing (not shown in FIG. 4) to facilitate playing ordisplaying content associated with a segment 306.

The information presented in UI 404 may include descriptions 416 for oneor more of the fragments 312. For example, if in the portion of theprogram corresponding to fragment 312(1)-1, a character named Georgethrows a pie in the face of his friend Jerry, a description may beprovided such as “George hits Jerry in the face with a pie” as shown inFIG. 4. Such a description may originate from the content creator orprovider, other users, or any other source.

The presented information may include ratings 422 received from otherusers. For example, the user may be presented with an average rating orscore that other users provided regarding the fragments 312. Continuingthe above example, a user may see that other users that have viewedfragment 312(1)-1 rated it a ‘nine’ on a scale of one-to-ten. Otherratings formats or scales may be used, such as ratings on a “four stars”scale. In some embodiments, the ratings may comprise an indication ofthe suitability of the content for a particular audience. For example,the ratings may comprise an indication that the content or fragment isgenerally not suitable for persons under a specified age, such as ageseventeen.

The presented information may further include a social networkingcategory 428. For example, the user may be able to view commentsprovided by her ‘friends’ or ‘buddies’ from a social networking website.One of the user's friends named Jack may have commented “I never laughedso hard; Jerry didn't see it coming!” in reference to fragment 312(1)-1.Jack's comment may encourage a user accessing UI 404 to select fragment312(1)-1 for inclusion in, e.g., segment 306(1) or content asset 300.Exemplary social networking status/information 428 provided inconnection with fragments 312(1)-2 through 312(1)-4 is shown in FIG. 4.

Additional options for user selection may be provided with respect tothe fragments 312. For example an option to allow the user to watch theprogram commercial free 442 may be provided via a checkbox, radiobutton, or the like. In some embodiments, the lack of commercials may becompensated for, e.g., the user may be charged a fee, or may have towatch a relatively long commercial at the outset, in order to watch theremainder of the program commercial free. The user may select fragmentsthat correspond to a user profile or the user's preferences 450. Forexample, the user may specify in advance that she is primarilyinterested in viewing content that is categorized as “comedy.” If theuser selects the checkbox associated with preferences 450, fragments312(1)-1 and 312(1)-2 may be selected, as those fragments are comedic innature as reflected in description 416. In some embodiments, suggestionsmay be presented to the user for purposes of selection. For example, auser may be presented with suggestions regarding fragments 312 based atleast in part on, e.g., the user's past selections.

The options and information provided or displayed in connection with UI404 are illustrative. In some embodiments, some of the options andinformation provided may be optional, and options and/or information notshown may be included. Based on a user's choices, a playlist may begenerated or created. The playlist may be created at a user device orclient, or by the content provider. Content asset 300 shown in FIG. 3may be a result of, or indicative of, such a playlist. In someembodiments, a timing model, such as coordinated universal time (UTC),may be used, e.g., by a user device, to construct a playlist. Forexample, a timing model may be used to ensure that playback of a contentasset, or portion thereof, occurs at a particular time or in accordancewith a particular schedule. In the event that UTC is used, a client/userdevice may obtain a current UTC time from one or more devices, such asone or more servers, one or more satellites, etc.

In some embodiments, the delivery of content, such as the delivery of aprogram, may be based on a linear or non-linear model, and may betransmitted via a broadcast, multicast, unicast, or another method. Themodel may provide for a distribution of content independent of thenumber or type of user/client devices receiving or consuming thecontent. In some embodiments, the delivery may be treated as a playlistof VOD assets. In some embodiments, a playlist interface or templatesimilar to that described above in connection with FIG. 4 may beprovided to a user device (e.g., a set-top box, a mobile device, alaptop computer, etc.) with enough information or details to construct aplaylist.

While discussed above in the context of a program, aspects of thisdisclosure may be applied to generate a content asset or playlistinvolving more than one program, or more generally, one or more contentitems of potentially various types.

In some embodiments, a manifest may be used. The manifest may beorganized, configured, or arranged as a file, a data structure, or thelike. The manifest may contain a playlist. The manifest may relate toone or more assets, such as one or more content assets.

In some embodiments, such as embodiments associated with linear or livestreaming of content, the manifest may contain one or more of an index,a pointer, and/or a reference time line and name space (e.g., a URL) foraccessing one or more segments or fragments. The manifest may supportrandom access features for using reference frames, so that a user mayinteract with one or more reference frames. For example, random accessfeatures included in the manifest may allow time shifted viewing oflinear content, fast forward and rewind control, instant viewing of afirst frame (e.g., Start Over capabilities), or other controls thatpermit a user to select a frame of the content asset to view. In someembodiments, the manifest may support ad insertion, such as linear adinsertion. For example, the manifest may include information identifyingad insertion points for one or more content assets, and the informationmay be used to determine where to insert ads in the one or more contentassets, such as between segments or fragments.

FIG. 5 illustrates a method suitable for demonstrating one or moreaspects of this disclosure. In some embodiments, the various blocksshown in FIG. 5 may be included in, associated with, or executed inaccordance with one or more of the components, devices, or environmentsdescribed above in connection with FIGS. 1-4. The method of FIG. 5 maybe used to generate a playlist, a content asset, and/or a manifest.

In step 502, one or more fragments may be generated. For example, in thecontext of a program, the one or more fragments may correspond to one ormore portions of the program, such as one or more scenes. In the contextof an audio asset (e.g., music), a fragment may correspond to one ormore portions of a recording, such as the chorus to a particular song.In some embodiments, one or more fragments may be generated at a userdevice, a client, or a content or service provider.

In step 508, the fragments generated in connection with step 502 may beorganized. For example, the fragments may be arranged as one or moresegments (e.g., segments 306 of FIG. 3). The organization may be basedon one or more factors or conditions. For example, the fragments may beorganized based on genre (e.g., whether the fragment is comedic,dramatic, involves action, incorporates audio, etc.), characters,ratings, etc.

In step 514, one or more selections may be received. The selections maycorrespond to one or more fragments, one or more segments, etc. Theselections may be based at least in part on user selections (e.g., viaUI 404 of FIG. 4). The selections may be based at least in part onchoices made by a service, network, or content provider. For example, aparticular service, network, or content provider may provide content fordistribution, potentially in accordance with a schedule.

In step 520, a playlist may be generated. The playlist may be based atleast in part on the selections received in connection with step 514.For example, the selections received in relation to step 514 may bestored in connection with the playlist generated in step 520.

In step 526, the fragments may be transmitted to a user. For example,the fragments may be transmitted from one or more devices, such as oneor more servers, in connection with any desired distribution model.Fragments of interest, such as those fragments determined to be includedin the playlist generated in step 520, may be stored or saved and/orpresented or output to one or more devices. The one or more outputdevices may be included in, or associated with, a user device.

The method of FIG. 5 is illustrative. In some embodiments, one or moreof the steps (or portions thereof) may be optional. One or more of thesteps (or portions thereof) may be executed in an order or sequencedifferent from that shown. In some embodiments, one or more steps notshown may be included.

In some embodiments, the method of FIG. 5 may be executed at a server,at a user/client device, partially at both a server and a user/clientdevice, or potentially at or in combination with one or more additionaldevices. For example, in the context of real-time delivery of a linearprogram, a user/client device may receive some or all of the fragmentsassociated with the program and may selectively pull those fragmentsfrom a channel, a stream, or other delivery mechanism or medium thatmeet the criteria associated with the selections of step 514.

Aspects of this disclosure may be used to decouple fragments or afragmentation process from typical program boundaries. In someembodiments, a program (or portions thereof) may be represented by oneor more playlists of fragments (or segments). The fragments (orsegments) may be represented by offsets or indexes in relation to thestart or end of the program (or any other point of reference). In someembodiments, the level of abstraction provided may allow for metadataupdates to be used to, e.g., correct for program over or under runs, DVRpartial recording, or any other boundary related consideration. Forexample, a delivery of a fragment or segment may be shifted in time inresponse to the metadata update.

Aspects of this disclosure may be used to decouple a client from havingto go to a centralized network-streaming source to retrieve a newmanifest (e.g., a new manifest file). A client may generate a manifestbased on one or more cached playlist templates, which may result ingreater or improved scalability.

In some embodiments, DVR and Start Over capabilities might not bestatically managed by the size of the manifest or a sliding windowassociated therewith. For example, for linear content, a user device maybe permitted to select and/or view a first-in-time fragment and/orsegment (e.g., the first fragment identified in a manifest, such as afragment at 5:00 PM), a fragment and/or segment associated with thecurrent time (e.g., a fragment associated with 5:10 PM if the currenttime is 5:10 PM), and any fragment and/or segment in between (e.g., anyfragment between 5:00 and 5:10 PM). In some embodiments, the user devicemay be prevented from selecting fragments and/or segments outside ofthis window. Alternatively, the user device may be permitted to selectand view any fragment and/or segment including and since the user tunedin (e.g., any fragment between now and 5:00 PM if the user tuned in at5:00 PM). In some embodiments, a user device may manage a set of rulesaround availability. For example, if a user device attempts to rewind toa fragment (or segment) prior to the first fragment (or segment)identified in a first manifest, the user device may request a secondmanifest identifying the additional fragments (or segments) and stringthe first and second manifests together. In some embodiments, a server(e.g., a server located at central office 103) may automatically providethe second manifest to the user device, with or without a request fromthe user device. While the above example illustrates stringing twomanifests together, any number of manifests may similarly be strungtogether. Asset/content availability may also be enforced by entitlementor digital rights management (DRM) rules. For example, asset/contentencryption keys may be changed at predetermined intervals, and the DRMrules may govern user device decryption permissions (e.g., by providinga decryption key to permit decryption).

In some embodiments, a manifest (or a portion thereof) may be generatedfor a given time period. In some embodiments, a manifest (or portionthereof) may be generated on demand, potentially for content that hasnot yet been created.

While some examples have been described above in the context oftelevision technology and communications, aspects of this disclosure mayreadily be applied to, and adapted to be operative on, one or more othercommunication systems. Those communication systems may include computernetworks, satellite networks, cellular networks, and the like.

Although not required, various aspects described herein may be embodiedas one or more methods, systems, apparatuses, and/or as transitoryand/or non-transitory computer-readable media storing executableinstructions. Accordingly, those aspects may take the form of anentirely hardware embodiment, an entirely software embodiment, anentirely firmware embodiment, or an embodiment combining software,firmware, and/or hardware. The functionality may be resident in a singlecomputing device or application, or may be distributed across multiplecomputing devices/platforms or applications, the multiple computingdevices/platforms optionally being connected to one another via one ormore networks. Moreover, the structural components described herein maybe distributed amongst one or more devices, optionally within a commonhousing or casing.

Various signals representing content, data, or events as describedherein may be transferred between a source and a destination in the formof electromagnetic waves traveling through signal-conducting media suchas metal wires, optical fibers, and/or wireless transmission media(e.g., air and/or space).

The methodological acts and processes described herein may be tied toparticular machines or apparatuses. For example, as described herein,fragments or segments may be generated at one or more devices, such asservers and user devices. More generally, one or more apparatuses mayinclude one or more processors and memory storing instructions, thatwhen executed by the one or more processors, cause the one or moreapparatuses to perform the methodological acts and processes describedherein. Furthermore, the methodological acts and processes describedherein may perform a variety of functions including transforming anarticle (e.g., content asset) into a different state or thing (e.g.,fragments or segments that may be arranged as part of a content asset orplaylist, potentially adhering to an on-demand pull model).

Aspects of the disclosure have been described in terms of illustrativeembodiments thereof. While illustrative systems and methods as describedherein embodying various aspects of the present disclosure are shown, itwill be understood by those skilled in the art, that the disclosure isnot limited to these embodiments. Modifications may be made by thoseskilled in the art, particularly in light of the foregoing teachings.For example, each of the features of the aforementioned illustrativeexamples may be utilized alone or in combination or subcombination withelements of the other examples. For example, any of the above describedsystems and methods or parts thereof may be combined with the othermethods and systems or parts thereof described above in any order. Itwill also be appreciated and understood that modifications may be madewithout departing from the true spirit and scope of the presentdisclosure. The description is thus to be regarded as illustrativeinstead of restrictive on the present disclosure.

What is claimed is:
 1. A method comprising: causing, by a computingdevice, transmission of a manifest for displaying one or more fragmentsof a content item and one or more user comments received from a website, wherein the manifest associates the one or more fragments with theone or more comments, and wherein the content item is a programcomprising more than one fragment associated with a portion of thecontent item; causing concurrent presentation of: selectable fragmentsof the one or more fragments, the one or more user comments, and arating received for at least one of the one or more fragments; receivingan indication that at least one of the one or more fragments have beenselected for inclusion in a listing; generating the listing comprisingthe selected at least one of the one or more fragments; and causingdisplay of the selected at least one of the one or more fragments basedon a transmission of the listing.
 2. The method of claim 1, whereinreceiving the indication that the at least one of the one or morefragments have been selected comprises receiving a selection from a uservia at least one of a video program listing, an interactive programmingguide (IPG), and a mobile computing device application.
 3. The method ofclaim 1, wherein the web site is associated with at least one user.
 4. Amethod comprising: determining, by a computing device, a plurality ofportions of content associated with one or more content items; causingconcurrent presentation of: selectable portions of the plurality ofportions of content, one or more user comments associated with at leastone of the plurality of portions of content and received from a website, a rating received for at least one of the plurality of portions ofcontent, and an option for ad-free content; receiving at least oneindication indicating a selection of one or more portions of theplurality of portions of content and indicating a selection of theoption for ad-free content; determining based on the at least oneindication, a plurality of fragments, from the one or more portions,wherein the fragments exclude ad content based on ad insertioninformation; generating a listing indicating the plurality of fragments;and causing, based on the listing, transmission of at least one of theplurality of fragments.
 5. The method of claim 4, wherein determiningthe plurality of fragments is further based on a passage of apredetermined amount of time.
 6. The method of claim 4, furthercomprising: grouping the plurality of fragments into the listing basedon a genre associated with at least one of the plurality of fragments.7. The method of claim 4, further comprising: transmitting the listingto a user device.
 8. The method of claim 4, further comprising:transmitting a social networking status from social networkingconnections of a second user for at least one fragment of the pluralityof fragments.
 9. The method of claim 4, further comprising: grouping theplurality of fragments into the listing based on at least one userpreference.
 10. The method of claim 4, further comprising: grouping theplurality of fragments into the listing based on a rating associatedwith at least one of the plurality of fragments.
 11. The method of claim4, wherein the ad insertion information is stored in a manifest and themanifest further comprises at least one of an index, a pointer, and areference to at least one random access frame inside at least one of theplurality of fragments.
 12. The method of claim 4, wherein the one ormore content items comprise a first content item having a first type anda second content item having a second type, and further comprising:grouping a first group of the plurality of fragments into a firstsegment comprising fragments of the first type; and grouping a secondgroup of the plurality of fragments into a second segment comprisingfragments of the second type.
 13. The method of claim 4, furthercomprising inserting a gap corresponding to a commercial break into thelisting based on the ad insertion information.
 14. A method comprising:receiving, by a computing device, at least one user fragment preference;storing the at least one user fragment preference in a profileassociated with a user; causing concurrent presentation of: a pluralityof fragments, an option to select, based on the profile, selectablefragments from the presented plurality of fragments, one or more usercomments associated with at least one of the selectable fragments andreceived from a web site, and a rating received for at least one of theselectable fragments; wherein the plurality of fragments are associatedwith one or more content assets, and wherein each of the one or morecontent assets comprises more than one fragment associated with aportion of the content asset; in response to receiving a selection ofthe option, selecting one or more selectable fragments based on the atleast one user fragment preference stored in the profile; generating alisting comprising the selected one or more selectable fragments; andcausing the selected one or more selectable fragments to be displayed.15. The method of claim 14, wherein the at least one user fragmentpreference is based on at least one of: a genre, previous fragmentselections of the user, and a rating.
 16. The method of claim 14,wherein the one or more content assets comprise a first content assethaving a first type and a second content asset having a second type, andfurther comprising: grouping a first group of the plurality of fragmentsinto a first segment comprising fragments of the first type; andgrouping a second group of the plurality of fragments into a secondsegment comprising fragments of the second type.
 17. The method of claim14, further comprising: grouping the at least one selectable fragmentsbased on the rating received for the at least one of the selectablefragments.
 18. The method of claim 14, wherein receiving the selectionof the option comprises receiving the selection of the option from theuser via at least one of a video program listing, an interactiveprogramming guide (IPG), and a mobile computing device application. 19.The method of claim 14, wherein the listing further comprises at leastone of an index, a pointer, and a reference to at least one randomaccess frame inside at least one of the selected one or more selectablefragments.
 20. The method of claim 14, wherein the web site isassociated with the user.